package yto.freemarker.java8.stream;

import org.junit.Test;
import yto.freemarker.java8.entity.Employee;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Stream;

/**
 * 1、操作stream
 * <p>
 * 创建stream
 * <p>
 * 中间操作
 * <p>
 * 终止操作
 *
 * @author dongxing
 * @create 2018-06-23 12:17
 **/
public class TestStreamApi01 {


    @Test
    public void test1(){
        //1、通过collection集合的方式
        List<String> list = new ArrayList<>();
        Stream<String> stream = list.stream();

        //2、通过arrays的方式
        Employee[] employees = new Employee[10];
        Stream<Employee> stream1 = Arrays.stream(employees);

        //3、使用stream自带的静态方法的方式
        Stream<Employee> stream2 = Stream.of(employees);

        //4、通过iterator的方式
        Stream.iterate(0, (e) -> e + 2)
                .limit(10)
                .forEach(System.out::println);

        //生成
        Stream.generate(()->Math.random())
                .limit(10)
                .forEach(System.out::println);

    }


}
